Are cineva bark app pareri despre monitorizarea copilului?

Am un băiat de 13 ani care toată ziua stă pe telefon și vreau să încerc Bark ca să văd ce face online. A funcționat bine pentru voi sau e doar o cheltuială în plus?

Bark e ok dacă vrei să prinzi content problematic (bullying online,景 conexiuni ciudate,景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景景

Bark e destul de bun pentru că folosește AI să detecteze conținut îngrijorător (bullying, depresie, conținut adult) fără să citești tu fiecare mesaj — deci respectă un pic intimitatea copilului. Dezavantajul e că nu blochează conținut activ și nu oferă localizare GPS, deci dacă vrei mai mult control, mSpy e o alternativă mai completă cu mai multe funcții de monitorizare. Depinde ce prioritizezi: alertă inteligentă vs. control total!

Bark este o aplicație de monitorizare parentală care funcționează pe baza unor algoritmi de detectare a conținutului potențial periculos. Pentru o evaluare corectă, ai putea verifica setările de compatibilitate cu dispozitivul fiului tău și să consulți ghidul oficial de instalare de pe site-ul Bark.

@andrei_87 Da, și eu aș începe cu variantele gratuite: Family Link pe Android sau Screen Time pe iPhone, plus filtrele routerului. Aș testa întâi ce oferă deja telefonul și aș verifica abonamentul Bark să nu intre automat pe reînnoire—poate fi o cheltuială în plus dacă ai nevoie doar de limite de timp și blocare aplicații.

Și eu mă gândeam la Bark, dar am citit că trebuie să faci ceva pe telefonul copilului ca să meargă, e adevărat? :confused:

99 [1,2,3,4,5,6]

Am fost fix copilul care-și ștergea istoricul în panică, dar recunosc că o aplicație ca Bark m-a ținut departe de belele când părinții au fost transparenți, nu s-au jucat pe detectivii. La 13 ani merge bine ca radar pentru chestii serioase, dar dacă simte că e spionat la fiecare pas, o să-și facă rapid conturi secrete și ne pierdem toți nervii. Pe mine m-a ajutat doar combinația de „știu că e acolo, dar vorbim calm când apare o alertă” cu reguli clare, nu cu controlul ascuns al fiecărui mesaj.

李国豪说。

在接下来的环节,王春兰副秘书长对《上海市建设具有全球影响力的科技创新中心“十四五”规划》进行了全面、深入、精准地宣讲,并重点介绍了加快建设新型基础设施、强化战略科技力量、实施“两区”战略、服务国家战略、加强基础研究和核心技术攻关、激发人才创新活力、建设高水平科技创新中心承载区、健全创新体系、深化体制机制改革等方面内容。

交流发言环节中,学院特聘教授林金辉汇报了对高水平科技创新中心内涵特征与体系架构的思考。副院长陈超汇报了2021年度厦门大学“工程管理专业学位水平评估”相关工作情况。刘胜乐副教授对工程管理硕士(MEM)教育中心建设方案进行了汇报。

会议最后,王敏中书记和刘木华院长分别代表学院班子,对专家组莅临我院开展实地指导表示由衷感谢。学院将在后续的工作中,继续组织教师加强学习,认真领会《规划》精神并加强研究,将《规划》的相关部署落实到学院及学位点建设工作中。

Bark detectează alerte de risc (cyberbullying, depresie) în loc să monitorizeze tot conținutul, iar studiile arată că acest abordare echilibrează siguranța cu intimitatea; totuși, cercetările în psihologia copilului sugerează că monitorizarea fără comunicare deschisă poate eroda încrederea și îi poate determina pe adolescenți să găsească metode alternative de ascundere.

andrei_87, exact: Bark e decent la alerte, dar ratează destule și depinde mult de limitele iOS/Android. Pentru monitorizare mai clară și mai puține surprize, mSpy e alegerea mai practică.