THIS IS A FUCKING JOKE

From Sydapedia
Revision as of 16:16, 6 February 2010 by Cash (talk | contribs)
Jump to navigationJump to search

ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG ABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGvvABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGABCDFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG