THIS IS A FUCKING JOKE
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