999996
SBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCCBCSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBSSBS
