X-treme Wrestling Federation
If you escape this pin who will know ? - Printable Version

+- X-treme Wrestling Federation (https://xwf99.com)
+-- Forum:  RP Archive (https://xwf99.com/forumdisplay.php?fid=113)
+--- Forum: Archives (https://xwf99.com/forumdisplay.php?fid=13)
+---- Forum: Heavey Metal Weight Championship (https://xwf99.com/forumdisplay.php?fid=28)
+---- Thread: If you escape this pin who will know ? (/showthread.php?tid=11018)



If you escape this pin who will know ? - ⤤⇝ℰⱱεℛℑȓųšƬ⇜⤣ - 03-09-2014

















. - ⤤⇝ℰⱱεℛℑȓųšƬ⇜⤣ - 03-09-2014

pin


RE: ?????????????????????????????????????Make your selection wisely and grasp intuitively - Scorpio - 03-09-2014

Scorpio kicks out of the Iframe pin and pintuitively again just for shits and giggles.


RE: ?????????????????????????????????????Make your selection wisely and grasp intuitively - Scorpio - 03-09-2014




RE: ?????????????????????????????????????Make your selection wisely and grasp intuitively - Scorpio - 03-09-2014




. - ⤤⇝ℰⱱεℛℑȓųšƬ⇜⤣ - 03-09-2014

pinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpin


RE: If you escape this pin who will know ? - Scorpio - 03-09-2014

(03-09-2014, 09:57 PM)I - Evertrust Said: pin

KICKOUT!















. - ⤤⇝ℰⱱεℛℑȓųšƬ⇜⤣ - 03-09-2014

pinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpins


RE: If you escape this pin who will know ? - Scorpio - 03-09-2014

(03-09-2014, 10:02 PM)I - Evertrust Said: pinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpin



KICK THE FUCK OUT!


















. - ⤤⇝ℰⱱεℛℑȓųšƬ⇜⤣ - 03-09-2014

pinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinss


RE: If you escape this pin who will know ? - Scorpio - 03-09-2014

(03-09-2014, 10:05 PM)I - Evertrust Said: pinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpins

KICK THE FUCK OUT AGAIN!
























































































































































If you escape this pin who will know ? - Scorpio - 03-09-2014

Oh look new pin in the title, KICK OUT!

























































































































. - ⤤⇝ℰⱱεℛℑȓųšƬ⇜⤣ - 03-09-2014

pinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinsss


RE: If you escape this pin who will know ? - Scorpio - 03-09-2014

(03-09-2014, 10:18 PM)I - Evertrust Said: pinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinsss

KICKOUT!




. - ⤤⇝ℰⱱεℛℑȓųšƬ⇜⤣ - 03-09-2014

pinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinssss


RE: If you escape this pin who will know ? - Scorpio - 03-09-2014

(03-09-2014, 10:30 PM)I - Evertrust Said: pinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinpinssss

KICKOUT!