Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes Yes No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No Yes No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No Yes No No Yes No No No No No No No No No No No Yes Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes Yes No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No Yes No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No Yes Yes No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No Yes No No Yes No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No Yes No No No Yes No No Yes No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No Yes No Yes No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No Yes No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No Yes Yes No No No No No No No No Yes No No No No Yes No No No No Yes No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No Yes No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No Yes No Yes No No No No Yes No No No No No No No No No No No No Yes Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No Yes Yes No No No No Yes No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No Yes No No No No Yes No No No No No No No No No Yes No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes Yes No No No No No No Yes No No No No Yes No No No No No No No No No No No No No Yes No No No No Yes No No No No No No Yes No No No No No No Yes No No Yes No No Yes No No No No No No No No Yes No No No No No No No No No No No No Yes No No No Yes No No No Yes No No No Yes No No No No No No No Yes No No No No No No No No No No Yes No No Yes No No No No No No No Yes Yes No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No Yes No No Yes No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No Yes No No No Yes No No No No Yes Yes No No No Yes No No No Yes No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No Yes Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No Yes Yes No No No No No No No Yes No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No Yes Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No Yes No No No No No No No No Yes No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No Yes No No No No No No No Yes No No No No No Yes Yes No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No Yes Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No Yes Yes No No No No No Yes No No Yes No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No Yes No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No Yes No Yes No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No Yes No No No No No Yes No No Yes No No Yes No No Yes No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No Yes No No No Yes No No No No No No No No Yes No No No No No Yes No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No Yes No No No No No No Yes No No No No No No No No No Yes No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No Yes No No No No No No No No No Yes No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No Yes Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes Yes Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No Yes Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes Yes Yes No No No No No No Yes No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No Yes No No No No No No No Yes No Yes No No Yes No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No Yes No No No No Yes No No Yes No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No Yes No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes Yes No No No No Yes No No Yes No No No No Yes No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No Yes Yes No No Yes Yes No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No Yes No No No No Yes No No No No No Yes Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No Yes No Yes No Yes No No No No No No No No No No No No No No No No Yes Yes Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes Yes No No No No No Yes No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No Yes No No No No No Yes No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No Yes No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No Yes No Yes No No No No No No No No No No Yes No No No No No No No Yes Yes No No No No No No Yes No No No No No No Yes No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No Yes No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No Yes Yes No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No Yes No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No Yes No No No Yes No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No Yes No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No Yes Yes No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes Yes No No No No Yes No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No Yes No No No No No No No No Yes No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No Yes No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No Yes No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes Yes No No No No No No No No No Yes No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No Yes No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No Yes Yes No No No No No Yes No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No Yes No No Yes Yes No No No No No No No No No No No No No No No Yes No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes Yes No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No Yes Yes Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No Yes No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes Yes No No No No No Yes No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No Yes No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No Yes Yes No No Yes No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No Yes No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes Yes No No No No No Yes No No No Yes No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes Yes Yes No No No No No No No Yes No Yes No No No No No No No No No No Yes No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No Yes No No Yes No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No Yes No No Yes No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No Yes No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No Yes No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No Yes Yes No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No Yes No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No Yes No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No Yes No No No No No No No No No No Yes No No Yes No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No Yes No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No Yes No Yes Yes No Yes Yes No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No Yes No No Yes No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes Yes No No Yes No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No Yes No Yes No No No Yes No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No Yes No Yes No Yes No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes Yes No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No Yes No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No Yes Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No Yes Yes No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No Yes No No No No No No No No No Yes Yes No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No Yes Yes No No No No No No No Yes No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No Yes No No No No No No No No No No No Yes Yes Yes No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes Yes Yes No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No Yes No No No No No No No No Yes No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No Yes No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes Yes No No No No No No No No No Yes No Yes No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No Yes No No Yes No No Yes No No No No No No No No No No No No No No No Yes No No No No No Yes No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No Yes No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No Yes No No No No No Yes No Yes No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No Yes Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No Yes No Yes No No No No Yes No No No No No Yes Yes No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No Yes No No No No Yes No No No Yes No Yes No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No Yes No No No No No No No No No No Yes No No No No No Yes No No No No No No No No Yes No No No Yes No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No Yes No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No Yes No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No Yes No No No No No No No Yes No No No Yes No No Yes No No No Yes No No No Yes Yes No No No No No No No No Yes Yes No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No Yes Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No Yes No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No Yes No No No Yes No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No Yes No No No No No No No No No No No Yes No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No Yes No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No Yes No No No No No Yes Yes No Yes No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No Yes No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No Yes No No No No No Yes Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No Yes No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No Yes Yes No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes Yes No No No No No No No No No Yes No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No Yes Yes Yes No No No No No Yes No No Yes No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No Yes No No Yes No No No No No Yes No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No Yes No No No No No No No Yes No No No No No No No No No No Yes No No Yes No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No Yes No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No Yes No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No Yes No No Yes No No No No No No No No No No Yes No No No No No No No No No No Yes Yes No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No Yes No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No Yes No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes Yes No No No No No Yes No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No Yes No Yes No No No No Yes Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No Yes No No Yes Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No Yes Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No Yes No No No No No No Yes No No Yes No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No Yes No Yes No No No No No No No Yes No No No No No No No No Yes Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No Yes No No No No No No Yes Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No Yes Yes No Yes No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No Yes Yes No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No Yes No No No No No Yes No No No No No No No Yes No No No No No No No No Yes No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No Yes No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No Yes No No No Yes Yes Yes No No No No No Yes No Yes No No No No No No Yes No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No Yes No Yes No Yes No No No No No No Yes No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No Yes No Yes No No No No No No No No No Yes No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No Yes No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No Yes Yes No No No No No No Yes No No Yes No Yes No No No No No No No No No No No No Yes No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes Yes No No No No No No No No No Yes No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No Yes No No No No No No No No No Yes Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No Yes No No No No No No No Yes No No No No Yes No No No No No No Yes No No No No No No No Yes No Yes No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No Yes No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes Yes Yes No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No Yes No No No No No Yes No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No Yes No No No No No No No No No No No No No No No No Yes No No No No Yes Yes Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No Yes No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No Yes No No No No No Yes No No No No Yes No No No No Yes No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No Yes No No No No Yes No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No Yes No No No No No No No No No No Yes No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No Yes No No No Yes No No No No No No No Yes No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No Yes No No No No No Yes No No No No No Yes No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No Yes No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No Yes No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No Yes No No Yes Yes No No No No No No No No No No No No Yes No No No No Yes Yes No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No Yes No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No Yes No No No No No Yes No No No No No No No No No No Yes No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes Yes No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No Yes Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes Yes No No No Yes No No No Yes No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No Yes No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No Yes No No No Yes No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No Yes No No No No Yes No No No No No No No Yes No No No No No No No No No No Yes No Yes No No No No No No No No No No No No Yes Yes No Yes No No No No Yes Yes No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No Yes No No Yes Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No Yes No No No No No Yes Yes No No Yes No No No No No No No Yes No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No Yes No No No No No No No No No No Yes No No Yes No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No Yes No No No No No No No No Yes No Yes No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes Yes Yes No No No No No No Yes No No No No No No No Yes No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No Yes No No No No No No No No No No Yes No Yes Yes No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No Yes No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No Yes Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No Yes No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes Yes Yes No No No No No No No No No No No Yes No No No No No No Yes No No No No Yes No Yes No No No No No No Yes No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No Yes No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes Yes No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No Yes Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes Yes No No No No No No No Yes No No No No No No No No No No Yes Yes No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No Yes No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No Yes Yes Yes No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No Yes Yes No Yes No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No Yes No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No Yes No Yes No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes Yes No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No Yes No No Yes No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No Yes No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No Yes No No No No No No No Yes Yes No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes Yes No Yes No No No No No No No No No No No Yes Yes No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No Yes Yes No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No Yes No No No No No Yes No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No Yes No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No Yes No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No Yes No Yes No No No No No No No No No Yes No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No Yes No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No Yes No No Yes No Yes No No No No No No Yes No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No Yes No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes Yes No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No Yes No No Yes No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No Yes No Yes No No No No No No No Yes No No No No No No No No No Yes No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No Yes No No No Yes No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No Yes Yes No Yes No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No Yes No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No Yes No Yes No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes Yes No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No Yes No No No No Yes No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No Yes No Yes No No No Yes No No No No Yes No No No No No Yes No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No Yes Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No Yes No No No No Yes No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No Yes Yes No No No Yes No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No Yes Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No Yes No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No Yes No No No Yes No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No Yes No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No Yes No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No Yes No No No No Yes No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No Yes Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No Yes No No Yes No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No Yes No No No No No No No No No No No Yes Yes Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No Yes No No No No Yes No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No Yes No Yes No No No No Yes No No No No No No Yes No No No No Yes No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No Yes No No Yes No No Yes No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No Yes No No Yes No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No Yes No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No Yes No No No No No Yes No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No Yes No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No Yes No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No Yes No No No Yes No No No No No No Yes No No No No No No Yes No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes Yes No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No Yes Yes No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No Yes No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No Yes No No Yes No No No No Yes No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes Yes Yes No No No No No No No No No No No No No No No No No No Yes No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No Yes Yes No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No Yes No No No Yes No No No No No No No No No Yes Yes No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No Yes No No No Yes Yes No No No No No No No No Yes Yes No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No Yes No No No No No No Yes No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No Yes No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No Yes No No No No No No No No No No Yes No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No Yes No No No No No Yes No No No No No No No No No No Yes Yes No No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No Yes No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No Yes No No No No No Yes No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No Yes No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes Yes No No Yes No No No No No No No No Yes No No No No No No No No No Yes No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No Yes No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes Yes No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No Yes Yes No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No Yes No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No Yes No No No No No No No Yes No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No Yes Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No Yes No No No No No No No No No No No No Yes No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No No Yes No No No No No No No No No No No No No No No No No No No No No No No No No Yes