we are the largest multi brand cycle showroom in the tricity in 5000 sq ft

Joy E Bikes

RIDES THAT RECREATE THE FUTURE, THE GREENER WAY
starstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstarstar