NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNGAAttcattggaaacgggaatatcttcatataaaatctagacagaggcattctcagaaacttctttgtgatgtgtgtcctcaactaacggcggtacatcctgtcttttgatacagcagtttggaaacactctttttgtagaatctgccagtggatatttgcatagctctaatgatttctttggaaacgggaataccttcatataaaatctagacagaggcactctcagaaactgctttgtgatatctgcattcaagtcacacagttcaacattccctttcttagagcaggtttgaaacactctttttgcaggatctggaagtggacatttggagcgctttgacgcctttggtgataaaggaaatgtcttcacataaaaactagaaagaagcattctaagaaacatctttgtgatatatgtactcaactaaccgagttgaaccttgctctttatagatcagctttttaatgctctttttgtggaatctgcaagtggatatttggatagctttcaggatttcgttggaaacgggattacaaacaaaatgtagacagcagcattctcagaaacttctttgtgatgtttgcttttaagtcacagagttgaacattcccttccatagagcagtttagaaacactctttctatagtatctggaagtggacatttcgagcgatttcaggcctatgttgaaaaacgaaatatcttcccataaaaactagacagtagcatactcagaagcttctttgtgatgcttgcttttaagtcacagagttgaacattccctttcgtagagcaggtttcagacactctttctgtagtatctggaagtggacatttcgagtgttttcaggcctatggtgaacaaggaaatatcttcccataaaaaccagacacaagcatttgcagaaacttgtttgtgatgcgtgtcctcaactcacagaatagaacatttcgtttgacagagcagcttggaaacacgctttttgtagaatctgcaattggatatttggatagctttgtggatttctttggaaacgggagtatcttcatataaaacctagacggaaacattctcagaaactcctttgtaatgtctgcattcacgtcacagatttgaacattccctttcatagagcaggtttgaaacactctttccgaagtatctggatgtggacacttggagcgctttgacgcttacggtgaaaaggaaataacttcccatgaaaactagacagaagcattctcacaaactggtgtgtgatgtatgtcctcagctaacagagttaaacctttctatttacagagcagttttcaaagactctttttggagaatctgcaagtggatatctggagatctttaaggatttcattggaaaccggaatatcttcaggtaaaatctagacagaggcattctcagaaacttcttcgtgatgtgcgtcctcaactaacagagtacaacctgtcttttgatacatcagtttggaaacactctttttgtagaatctggaagtggatatttcgatagctctaacgattttgttgaaaacgggaatagcttcatataaaatctaggcagaggcactctcagaaactaattttgtgagatctgcattcaagtcacagagttgaacattccctctcgtagatctggtttgaaacactctttttttgtatctggaagtggatctttggagctctttgacgactttggtgaaaaaggaaatatgtccccataaaaactacaccaaagcattctcagaaacttgtttgtgttgtgtgtactcatctgacagagttgaacgtttctttttacacagcagttttgaaacactctttttgtagaatctgcaagtggataattggatgactttaaggatttcgttggaaacgggactatattcatgtaaaatctacacagaagcattctcagaatcttctttgtgatgtgtgtcctcaactaacagagttcaacctttcttttgatacagcagtttggaaacactctttttgtagaatcttcaagtggatatttggatagctctaacgatttcgttggaaacgggaatgtcttcatataaaatctgtacagaagcactctcaggagctactttgtgatatctgcattcaggtcacagagttgaacattccctttcttagagcacgtttgaaacacactttttgtagtatctggaagtggacatttggagcgctttcacgcctttggtgaaaaaggaaatgtcttcccataaaaactagacagaagcattctaagaaacttctttgtgatatatgcactcaactaaccgagttgaacctttctctttatagatcagtttgaaatgctctttttgtggaatctgcaagtggatatttggatagctctgaggatttcgttggaatcgggattacatataaaatatagacagcagcattctcagaagctccttgtgatgtttgcttttaagtcacagagttgaacattcccttccatagagcagttttgaaacactctttctgtagtatctctaagtggacatttcgagcgatgtcaggcctatgttgaaaaaggaaataacttcccataaaaagtagacagaagcattctcagaaacttatttgtgatgggtgtcctcaactaacagagttgaacgtttcttttgatacaacagtttagaaacactctttttgtagtatctgcaagcggatatttcgataactttgaagatttcgttggaaacgggaatatcttcatatacaatctagacagaggcactctcagaaactgctttgtgatgtctgcattcaagtcacagaattgaacattctctttcatcgagcacgtttgtaacaccgtttctgtagtatctggatgtggacatttgagcgctttgacgcgtacggtgacataggaaatatcttcccttaaaaactagacagaagccttctcacaaactgctttgtgatgtatgtcctccactaacagagttgaacctttctatttacagggcagttttgaaagactctttttgtagaatctgcaagcggatatttggatacctttaagtagatttcattggaaacggaaaagtcattctcagaaacttctttgtgatatgtgtccccacctaacagagtacaacctgtctttggatacagcagtttggaaacactctttttgcagaatctgcaagtggatatttggatagctctgacgatttccttggaaacgggaatatcttcatataaaatctagacagaagcactctcaggaggtactttgtgatatctgcattcaagtcacagagttgaacattccctttcatagagctggtttgaaacactctttttgttgtatctggaaatggatctttggagcgctttgccgactttggagaaaaaggaaatatcttcccataaaaactagacagaagcattctcagaaacttgtttgtgatgtgtgtactcaactgacagagttgaacgtttctttttacacagcagttttgaaacactctttttgtaaaatctgcaagtggataattggatggctttaaggatttccttggaaacgggactatattcatgtaaaatctacacagaagcattctcagaaacttctttgtgatgtgtgtccttaactaacagagttcaacctttcttttgatacagcagtttcgaaacactccttttgtagaatatgcaagtggatatttggatagctctaacgatttcataggaaatgggaataccttcatataaaatctagacagaggcactctcagaaactgctttgtgatatctgcactcaagtcacagagttgaacattccctttcttagagcaggtttgagacactttgtagtatctggaagtggacatttttagcgctttgacgcctttggtgaaaaaggaaatgttttcccataaaaactagacagaagcattctaagaaacttctttgggatatatgtactcaactaacagagttgaacctttctatttataggtcagttttgagaagctcttgttgtggaatctgcaagtggatattaggatagctctgaggatttccttggaaacgggattacatataaaaagtagacagcagcattctcagaaccttctttgtgatgtttgcttttaagtcacagagttgaatattcccttacatagagcaggtttgaaacactatttctgtagtatctggacatggacatttcgagcgatttcaggcctatgttgaaaacggaaatatcttcccataaatactagacagaagcattctcagaaatttctttgtgatgtgtgtcctcaactaacagagttcatcctttcttatgatacagcagttttgaaacactctttttgtagaatatgtaagtggatagttggatagctctcattatttcattggaaacgggagtatcaacatagaaaacctagacagaaaaattctcagaaactgctttatgatgtctgcattcacgtcacagagttgatcattccctttcatagagcaggtttgaaacactatttctgtagtatgtggacatggacatttcgagcgatttcaggcctatgttgaaaacggaaatatcttcccataaaaactagacagaagcattctcagaaatttctttgtgatgtgtgtcctcaactaacagagttcatcctttcttatgatacagcagtttggaaacactctttttgtagaatatgtaagtggatagttggatagctctcactatttcgttggaaacgggagtatcaacatagaaaacctagacagaaacattctcagaaactgctttatgatgtctgcattcacgtcacagagttgatcattccctttcatagagcaggtttgaaaccctctttccgtagtatctggatgtggacacttggagcgctttgacgcttacggtgcaaaaggaaatatcttcccataaaaactagacagaagcattctcacaaactggattgtgatgtttgtcctcaactaacagagttgaaactttctatttacagagcacttttgaaagactctttttggagaatctgcaagtggatatttggagagctttaaggatttcattggaaacgggaatatcttcatataaaatctagacagaggcattctcagaaacttctttgtgatgtgtgtcctcaaccaacggagtacatcctgtcttttgatacagcagtttggaaacactctttttgtagaatctgcaagtggatatttggatagctctaacgatttcgttggaaacgggaatatcttcataaaaaatctagacagaagcactctcagaaactactttgtgatatcggcattcaagtcacagagttgaacattccctttcatggagcaggtttgaaacactctttttgtagtatctggaagtggacctttggagccctttaatgattttggtgaaaaaggaaatatcttcccataaaaacgagacagaagcattctcagaaacttgtttgtgatttgtgtactcaactaacagagttgaacctttctttttacagagccgttttgaaacactctttttgtagaatctgcaagtgcatatttgaatggctttaaggatttcgttggaaatggcaatatcttcatgtaaaacctacacagaagcattctcagaaacttctttgtgatgtgtgtcctcaactaacagagttgaacctttcttttgacagagcagttttgaaacactctttttgtaggatctgcaagtggatatttggatagcttagaggatttcctgggaaatgggaatatattcatatgaaatctagacagaagcattctcagaaacttctttgtgatcttttcattcaactcgtagagttgaacattccctttcatagagccagtttgaaacactcttcttgtagtatcgggaagtggacatttggagcgctctgacgcctatggtgaaaatggaaatatcttcccataaaaactagacagaaggattctcagaaacatgtttgtgatgtatgtactcagctaagagagtggaacctttctttttacagagcagctttgatacactatttttgtagaatctgcaatttgatattttgattgctttaaagatatcgttggaaacaggaatatcttcatataaaatctagacagaagcactctcggaaacgactttgtgatatctgcattcaagtctcagagttgaacgttccctttcttagagcaggtttgaaacactctttttgtagtatctggaagtggacatttggagcgctttgacgcctttggtgaaaaaggaaatgtcttcccataaaaactagacagaagcattctaagaaacttctttgggatatatgtactcaactaacagagttgaacctttctatttatagatcagttttgaaacgctctttttgtggaatctgcaagtggatatttggatggctttgaggatttcgttggaaacgggattatatataaaaagtagacagcaacattctcagaagcttctttgtgatgtttgcttttaagtcacaggtttgaacattccctttcataaagcaggtttgaaacactctttctgtagtatctggaagtggacattttgagcgctttctggcctatgttgaaaaaggaaatatctttccataaaaagtagacagaagcattctcagaaacttatttgtgatgtgtgtcctcaactaacagagctgtacctttcttttgatacagcagtttggaaacactctttttgtagaatttgcaagtggatatttggataacttcgaagatttcgttggaaacgggaatatcttcatataaaatctagacagaagcattctcagaaactgctttttgatgtctgcattcaagtcacagagttgaacattccctttcatctagccggtttgaaacactctttttgtagtatctggatgtggacattttgagcgctttgacgcctacagtgaaaaaggaaatatcttcccataaaaagtagacagaagcattctcagaaacttgtttgtgatgtatgtcctcaactaacagagttgaacaattctttttacagagcagttttgaaacactctttttgtagaatctgcaggtggatattgggatagctttaaggatttcattggaaacgggaatatccaaatatcaacttgcagattctacaaaaatagtgtatcaaagctgctctgtaaaaagaaaggttccactctgttagctgagtacacacatcacaaacatgtttctgagaatccttctgtgtagtttttataggaagatatttcctttttcagcataggcatcagagcgctccaaatgtccacttcccggtagtacaagaagagtgtttcaaaccggctctatgaaagggaatgttcaactctacgagttgaatgaaaagatcacaaagaagtttctgagaatgcttctgtctagattttatatgtatatattcccgtttccaacgaaatcctctaagctatccaaatatccacttgcagattccgcaaaaagagtgtttcaaaactgctctgtcaaaagaaaggttcaattctgttagttgagtacaaacatcacaaagaagtttctgagaatgcttctgtctagtttttatgggaagatatttcctttttcaccatgggcctcaaagtgcttcaaacgtccacttccagatactacaaaaagagtgtttcaaacctgctctatgaaagagaatgttcaattctgtgacttgaaggcagacatcacaaagcagtttctgagaatgcttctgtcgagattatatacgaagatactcccgtttccaacgaaatcctaaaatctatccaaatatccacttgcagattctacaaaaagagtgtttcaaaactgctctgtgaaaagaaagcttcaactctgttagctgagtacacacatcacagacaagtttctgagaatgcttctgtctattttttatgggaagatatttcctttttcaccataggcgtcaaagcgctcgaaatgtccacttccacatactacaaaaagagtgtttcaaaccttctctatgaaagggaatgttcaactctatgagttgaatgcaaacatcagaacgaaatttctgagaatgctgctgtccactttttatatgaatgcgcgctttcaacgaaatcctcaaagcaatccaaatatccacttgcagattccacaaaaagagtgtttcaaaactcctctatcaatagaaagtttcaactctgttagttgaggacacacatcacaaataagtttctaagaatgcttctgtgtagattttacatgaagatattcccgtttccaatgccatccttaaagccatgcaaatatccacttgcagattctacaaaaagagtgtttcaaaactgctctgtaaaaagaaaggttcaactctgttagttgagtacacacatcacaaacaagtttctgagaatgcttctgtctcgtttttatgggaagatatttcctttttcaccaaagtcgtcaaagcgctccaaatgtccacttccagatactacaaaaagaatgtttcaaacctgctccatgaaagggaatgttcaactctgtgacttgaatgccgatatcacaaagtagtttctgagagtgcttctgtctagattttatatgaagatattctcatttccaatgaaatcgttagagctatccaaatatccacttgcagattctacaaaaagagtgtttccaaactgctgtatcaaaagaaaggttgaactttgttagttgaggacacacattacaaagaagtttctgagaatgcttctgtctagattttatatgaagattttcccgtttccaatgaaatccttaaagctatcccaatatccacctgtagattctacaaaaagagtgtttcaaaactgctctgtaaaaagaatggttcaactctgttagttgaggacacacatcacaaacaagtttctgagaatgcttctgtctagtttttgtgggaagatatttcctttttcactgtaggcatcaaagcgctccaaatgtccacattcagatactacaaaaagagtgtttcaaacctgctcgatgaaagggaatgtt