Filmes Dublado(trocar)
Guia do usuário
Filme demorando a carregar?
Problema com o vídeo?
Pedir um filme
 

Toy Story 3

Título Original: Toy Story 3
Gênero: Animação, Família, Comédia
Duração: 103 minutos
Diretor: Lee Unkrich
Ano de Lançamento: 2010
Sinopse: Andy (John Morris) tem 17 anos e está prestes a ir para a faculdade. Desta forma, precisa arrumar o quarto e definir o que irá para o lixo e o que será guardado no sótão. Seus antigos brinquedos, entre eles Buzz Lightyear (Tim Allen), Jessie (Joan Cusack) e o Sr. Cabeça de Batata (Don Rickles), são separados para serem guardados no sótão. Entretanto, uma confusão faz com que a mãe de Andy os coloque no lixo. Woody (Tom Hanks), que será levado por Andy para a faculdade, decide salvá-los. O grupo escapa, mas acaba no carro da mãe de Andy. Ela leva a uma creche diversos brinquedos, entre eles Barbie (Jodi Benson). Ao chegarem, os amigos encontram um universo até então inimaginável, onde os brinquedos sempre têm crianças para brincarem com eles.

Animes Legendados

.Hack - Legend of Twiligh.
.hack//ROOTS
.hack//Sign
009-1
07-Ghost
11eyes
2x2 Shinobuden
30-Sai No Hoken Taiiku
Abenobashi Mahou
Abenobashi Mahou Shouten
Accel World
Acchi Kocchi
Aeon Flux
Aku no Hana
Another
Arata Kangatari
A Channel
A Channel Especiais
Afro Samurai
Agatha Christie no Meitantei Poirot to
Agatha Christie's Great Detectives
Agent Aika
Ah Megami-Sama
Ai Yori Aoshi
Ai Yori Aoshi Enishi
Air
Air Gear
Air Gear Ovas
Ajimu Kaigan Monogatari
Akane-iro Ni Somaru Saka
Aki Sora
Akikan
Amaenaideyo
Amaenaideyo Katsu
Amagami SS
Amatsuki
Angel Beats
Angel Links
Angelic Layer
Ano natsu de matteru
Ano Novo.
Another
Ao no Exorcist (Blue Exorcist)
Aoi Hana
Aquarian Age
Aquarion Evol
Arakawa Under The Bridge
Arakawa Under The Bridge x2
Area No Kishi
Arjuna
Ashita No Joe
Asobi ni iku Yo
Astro Boy
Asu no Yoichi
Asura Cryin
Asura Cryin 2
Avatar Livro Fogo
Avenger
Axis Powers Hetalia
ayakashi - japanese classic horror
Ayashi No Ceres
Baccano
Baka To Test To Shoukanjuu
Bakugan Os Invasores Gandelianos
Bakuman
Bakuman 2011
Bakuman 2nd Temp
Bakuman 2ª Temporada
Bakumatsu Kikansetsu Irohanihoneto
Bakumatsu Gijinden Roman
Binbougami ga
Blood+
BTOOOM!
Bakuretsu Tenshi [Burst Angel]
Bamboo Blade
Banner Of The Stars
Banners Of The Stars
Basilisk
Basquash
Beck
Beelzebub
Beelzebub Ova
Ben-To
berserk
Beyblade G-Revolution
Beyblade Metal Fight
Beyblade Metal Fusion
Bihada Ichizoku
Binbou Shimai Monogatari
Black Cat
Black Lagoon
Black Rock Shooter
Blade
Blassreiter
Bleach
Blood c
Blood+
Blue Dragon
Blue Dragon: Tenkai no Shichi Ryuu
Blue Gender
Blue Seed
Bokura Ga Ita
Bouken Ou Beet
Brave 10
Bt X
Bucky
Bus Gamer
Busou Renkin
C: The Money of Soul and Possibility Control
Canaan
Capeta
Campione
Chitose Get You
Code: Breaker
Captain Herlock - The Endless Odyssey
CardFight Vanguard
Caverna do dragão
CDZ Hades
CDZ Hades Inferno
Chi's Sweet Home
Chihayafuru
Chobits
Chocolate Underground
Chokotto Sister
Chrono Crusade
Chrono Trigger OVA
City Hunter
Clannad
Clannad After Story
Claymore
Cobra the Animation
Code Geass
Code Geass R2
Corrector Yui
Cowboy Bebop
Coyote Ragtime Show
Cross Fight B-Daman
Crystal Blaze
D Gray Man
D.N.Angel
Dance In The Vampire Bund
Dantalian No Shoka
Darker Than Black: Ryuusei No Gemini
DeadMan Wonderland
DeadMan Wonderland OVA
DearS
Death Note
Deltora Quest
Dennou Coil
Densetsu no Yuusha no Densetsu
Desert Punk
Detective Conan
Detroit Metal City
Devil May Cry
DiGi Charat
Digimon Adventure Legendado
Digimon Adventure Zero Two
Digimon Data Squad
Digimon Frontier
Digimon Tamers
Digimon Xros Wars
Digimon Xros Wars II
Dinossauro rei
Divergence Eve
Divergence Eve 2 Misaki Chronicles
Dna² legendado
Dna² legendado Ova
Dog Days
Double-J
Doujin Work
Dakara Boku wa H ga Dekinai
Dansai Bunri no Crime Edge
Date A Live
Devil Survivor 2
Dragon Ball Absalon
Dragon Ball GT Legendado
Dragon Ball Kai
Dragon Ball Legendado
Dragon Ball Z Legendado
Dragon Crisis
Druaga no To The Aegis of Uruk
Durarara
El Cazador de la Bruja
El Hazard
elfen lied
Elfen Lied Ovas
Ebiten
Ergo Proxy
Eureka Seven
Excel saga
Eyeshield 21
Fairy Tail
Fatal Fury - Legend of the Hungry Wolf
Fate Stay Night
Fate/Zero
Fight Ippatsu Juuden-Chan
Final Approach
Final Fantasy Unlimited
Fireball
Flag
Flame Of Recca
Fly
Fortune Arterial: Akai Yakusoku
Fractale
Freezing
fruits basket
Full Metal Panic Fumoffu
Fullmetal Alchemist
Fullmetal Alchemist Brotherhood
Fullmetal Alchemist Ovas
Furi Kuri
Fushigi Yuugi
Futakoi
Futakoi Alternative
G-On Riders
G-On Riders OVAS
Ga Rei Zero
Gakuen Alice
Gankutsuou
Gantz
Gene Shaft
Genshiken
Genshiken 2
Gensou Maden Saiyuki
Gentsumen Heiki To Mina
Get Backers
Get Backers Legendado
Getsumen Heiki To Mina
Ghost Hunt
Ghost In The Shell SAC
Giant Killing
Gift Eternal Rainbow
Gilgamesh
Gintama
Ginga Kikoutai Majestic Prince
Gintama OVA
Girls Bravo
Girls Bravo 2ª Temp
GOSICK
Grappler Baki
Grappler Baki: Saidai Tournament Hen
Gravitation
Great Teacher Onizuka - GTO
Green Green
Grenadier
Guilty Crown
Gundam Age
Gundam Seed
Gundam Seed Destiny
Gundam Wing
Gungrave
Gunslinger Girl
Haiyoru Nyaruani
Haiyoru Nyaruani Remember My Mr
Hagure Yuusha no Estetica
Hidamari Sketch
High Score
Hiiro no Kakera
Hiiro no Kakera Dai Ni Shou
Hitsuji no Uta
Hyakka Ryouran Samurai Bride
Hajime No Ippo
Hajime No Ippo : New Challenger
Hajime No Ippo OVA
Hakuouki Hekketsu-Roku
Hakuouki Shinsengumi Kitan
Hana Yori Dango
Hanasaku Iroha
Happy Seven
He Is My Master
Hellsing
Hellsing Legendado
Hellsing Ultimate Ovas
Hen Zemi
Heroic Age
Heroman
Higashi No Eden
Higepiyo
High School Of The Dead
High School Of The Dead OVAS
High School DxD
Higurashi No Naku Koro Ni
hikaru no go
Himiko-Den (Legend of Himiko)
Hourou Musuko
Hungry Heart Wild Striker
Hunter X Hunter
Hunter X Hunter 2011
Hyakka Ryouran Samurai Girls
Ichiban Ushiro No Daimaou
Ichigo 100%
Ichigo Mashimaro
If I See You in My Dream
Ikkitousen
Ikkitousen Dragon Destiny
Ikkitousen Great Guardians
Ikkitousen Xtreme Xecutor
Ikkitousen: Shuugaku Toushi ..
Ikoku Meiro no Croisee
Inazuma Eleven
Inazuma Eleven GO
Initial D First Stage
Initial D Second Stage
Inukami
InuYasha
InuYasha Kanketsu-hen
Iron Man
Itazura Kiss
Jikoku Shoujo
Jikoku Shoujo Futakomori
Jikoku Shoujo Mitsuganae
Jinki Extend
Jubei-Chan
Jubei-Chan 2
Junjou Romantica
K-On
K-On 2
Kaichou Wa Maid sama
Kaitou Reinya
Kami nomi zo Shiru Sekai
Kami nomi zo Shiru Sekai 2
Kamikakushi Karekano
Kamisama Dolls
Kamisama no Memo-Chou
Kampfer
Kannagi
Kanokon
Kanon
Katanagatari
Katekyo Hitman Reborn
Kaze no Stigma
Kekkaishi
Kiba
Kimi Ni Todoke
Kimi Ni Todoke 2
Kimi To Boku
King of Bandit Jing
Kiniro No Corda Primo Passo
Kiss X Sis
Kiss x Sis Tv
Konjiki No Gash Bell
Kore Wa Zombie Desu Ka?
Koutetsushin Jeeg
Kuroshitsuji
Ladies Vs Butlers
Legend Of Duo
Lemon Angel
Level E
Love Hina
Love Love
Lovely Complex
Maburaho
Mahou Sensei Negima
Mahou Shoujo Madoka Magika
Major
Makai Senki Disgaea
Maken Ki
Makoto Mahoromatic
Manyuu Hikenchou
Matheus Shura
Mawaru Penguindrum
Mayo Chiki
Mayoi Neko Overrun
Medabots
MegaMan Nt Warrior
Midori No Hibi
Mirai Nikki
Mitsudomoe
MM
Monster
Monster Rancher
Moretsu Pirates
Motto To Love-Ru
Mushishi
NANA
Naruto
Naruto Shippuuden
Natsume Yujincho San
Natsume Yuujinchou
Natsume Yuujinchou Shi
Needless
Needless Especiais
Negima
Neon Genesis Evangelion
NHK Ni Youkoso
Nichijou TV
Night Wizard
NO.6 legendado
Nogizaka Haruka No Himitsu
Noir
Nurarihyon no Mago
Nurarihyon no Mago Sennen Makyou
Nyan Koi
Omamori Himari
One Piece
Onii-chan no Koto Nanka Zenzen Suki
Onii-chan Dakedo Ai Sae Areba
Onmyou Taisenki
Ore no Imouto ga Konna ni Kawaii Wake
Ore No Imouto Ga Konnani Kawaii Wake
Os Cavaleiros Do Zodíaco Saga Hades
Os Cavaleiros Do Zodíaco The Lost
Ouran High School Host Club
OverDrive
Pandora Hearts
Panty and Stocking with Garterbelt
Pedidos
Persona 4
Phin Brain Kami No Puzzle
Piano
Pokémon Best Wishes
Pokémon Diamond Pearl
power stone
Princess Lover
Princess Princess
Project Arms
Ragnarok
Ranma 1/2
Raruto
Rave Master
REC
Record Of Lodoss War
Rinne No Lagrange
Rosario + Vampire
Rosario + Vampire Capu 2
Rou Kyuu Bu
Rozen Maiden
Rozen Maiden Traümends
Rurouni Kenshin
Ryuusei no Rockman
Saber Marionette J
Sacred Seven
Saikano
Saint Seiya Omega
Saikou Kannazuki no Miko
Sailor Moon
Sakura Card Captors
Samurai Champloo
Samurai Deeper Kyo
School Days
Seiken No Blacksmith
Seikon no Qwaser
Seikon no Qwaser 2ª Temporada
Sekai-ichi Hatsukoi
Sekirei
Sekirei ~Pure Engagement~
Sengoku Basara
Sengoku Otome Momoiro Paradox
Senhime Zesshou Symphogear
Shakugan no Shana
Shakugan no Shana Second
Shaman King
Shiki
Shin Tennis no Oujisama
ShinChan
Shinrei Tantei Yakumo
Shinryaku Ika Musume
Shinzo
Shingeki no Kyojin
Shounen Onmyouji
Shugo Chara
Shurato
Sket Dance
Slam Dunk
Sonic X
Sora no Otoshimono
Sora no Otoshimono Forte
Sora No Woto
Soul Eater
Speed Grapher
Star Driver Kagayaki No Takuto
Steins Gate
Supernatural The Animation
Suzumiya Haruhi no Yuuutsu 2009
Suisei No Gargantia
Sword Art Online
Tales of Eternia
Tears To Tiara
Tegami Bachi
Tegami Bachi Reverse
Tenchi Muyo
Tengen Toppa Gurren Lagann
Tenjou Tenge
The King Of Fighter Another Day
The Prince Of Tennis Legendado
Tiger and Bunny
To Aru Kagaku no Railgun
To Aru Majutsu no Index
To Aru Majutsu no Index II
To love-ru
Togainu no Chi
Tokyo Magnitude 8.0
Toradora
Toriko
Trigun
Trinity Blood
True Tears
Tsubasa Chronicle
Un-go
Usagi Drop
Uta-Kata
Vampire Knight
Vampire Knight Guilty
Viewtiful Joe
Viper's Creed
Weiss Survive
Weiss Survive R
White Album
White Album 2
Wichblede
Witch Hunter Robin
Wolf's Rain
Wolverine
Working
X Men
xxxHOLIC
xxxHOLIC Kei
Yamato Nadeshiko Shichi Henge
Yami no Matsu
Yami no Matsuei
Yosuga no Sora
Yozakura Quartet
Yu Yu Hakusho
Yu Yu Hakusho Legendado
Yu-Gi-Oh
Yu-Gi-Oh Duel Monster
Yu-Gi-Oh 5D
Yu-Gi-Oh Capsule Monster
Yu-Gi-Oh Zexal
Yugo - The Negotiator
Yumeiro Pâtissière
Yumeiro Pâtissière SP Professional
Yumekui Merry
Yumeria
Zaion
Zan Sayonara Zetsubou Sensei
Zegapain
Zero no Tsukaima
Zero No Tsukaima F
Zero no Tsukaima Futatsuki no Kishi
Zero no Tsukaima Princess no Rondo
Zillion
Zoku Natsume Yuujinchou
Zombie Loan
Zone of the Enders: Dolores

Animes Dublados

Animes Legendados

Ajude, Por favor! *-*

asddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasddddaasdddda