Scissor

Painting on pixel layers

Dokument Scissor môže držať maľované pixely vedľa svojich kreslených ciest a textu, takže jeden súbor môže niesť jemnú štetcovú textúru, fotografiu a ostré logo spolu. Táto stránka pokrýva, čo je pixelová vrstva, ako na nej maľovať a ako sa správa ako objekt v dokumente.

Pixely versus vektorová grafika

Dokument Scissor drží dva druhy grafiky vedľa seba. Cesty a text sú kreslené: zostávajú ostré pri akejkoľvek veľkosti, pretože sú popísané svojím tvarom a Scissor ich prekresľuje vždy, keď približujete alebo škálujete. Pixelová vrstva je maľovaná: je to mriežka farebných bodiek, ako fotografia alebo štetcová maľba a zväčšenie robí tieto bodky väčšími namiesto pridania detailov. Jedný dokument môže držať toľko z každého, koľko chcete, v akomkoľvek poradí a naskladávajú sa v paneli Vrstvy spoločne.

Siahnite po pixelovej vrstve, keď tvar sám o sebe nestačí: ručne maľovaný tieň, hrubá textúra pod čistým textom, výbuch farby, ktorý nemusí byť editovateľná cesta, alebo retuš nad umiestnenou fotografiou. Udržiavajte logá, diagramy a čokoľvek, čo budete neskôr meniť veľkosť, ako vektory a použite pixely pre časti, ktoré chcú pocit maľby.

Umiestnená fotografia je súvisiaca, ale samostatná vec. Súbor > Umiestniť… (⇧⌘P) prináša existujúci obrázok do dokumentu ako vložený obrázok; pixelová vrstva je plochou, na ktorej maľujete od nuly v Scissor. Obe sú zložené z pixelov a obe sa dajú vzorkovať kvapkadlom, ale len pixelová vrstva prijíma ťahy štetca.

Vytvorenie pixelovej vrstvy

Objekt > Pixelová vrstva > Nová pixelová vrstva pridá prázdnu plochu pokrývajúcu aktívnu plochu. Nemusíte ju však vytvoriť najprv: vyberte Štetec a maľujte a Scissor vytvorí vrstvu za vás v momente, keď prvý ťah pristane. Obe cesty mapujú vrstvu na plochu, takže pixely sa zarovnajú s artboardom bez ohľadu na to, v akom rozlíšení boli vytvorené.

Toto rozlíšenie pochádza z nastavenia Rastrové efekty v Súbor > Nastavenie dokumentu… (⌥⌘P): Obrazovka (72 ppi), Stredné (150 ppi) alebo Vysoké (300 ppi). Vyššie nastavenie dáva novej pixelovej vrstve viac bodiek na bod, takže štetcová práca zostáva hladká, keď sa kus tlačí alebo zobrazí veľký. Nastavte to pred vytvorením vrstvy, pretože počet pixelov je fixný, keď je plocha vytvorená.

V modernom rozhraní môžete vrstvu pridať aj z panela možností nástroja: so Štetcom alebo Pixelovou gumou aktívnou sedí tlačidlo Nová pixelová vrstva na konci panelu.

Umiestnenie obrázka vytvorí pixelovú vrstvu tiež. Spustite obrázok na plátno, použite Súbor > Umiestniť… alebo prilepíte jeden zo schránky a príde ako editovateľná pixelová vrstva vo svojej vlastnej veľkosti namiesto zamknutého obrázka — takže na ňu môžete maľovať, maskovať ju, upravovať a filtrovať priamo. Otvorenie obrázka pomocou Súbor > Otvoriť vytvorí nový dokument s jednou plochou veľkosti obrázka, vyplnenou pixelovou vrstvou. Veľké fotografie sa zmenšia, aby sa zmestili do rozpočtu pixelov. SVG zostáva vektorové — jeho cesty zostávajú editovateľné — takže len rastrové obrázky (PNG, JPEG, GIF, WebP a podobne) sa stanú pixelovými vrstvami.

Vrstvený súbor .psd príde bohatší: otvorenie jedného zostaví jeho stoh ako samostatné pixelové vrstvy, zachovávajúc masku každej vrstvy a prinášajúc text, tvary a vrstvené efekty, takže súbor pristane bližšie k tomu, ako vyzeral tam, kde bol vytvorený, namiesto ako jeden plochý obrázok. Je to najplnejší spôsob do pixelovej práce a všetko na tejto stránke sa potom použije na vrstvy, ktoré prídu.

Maľovanie

Štetec a Pixelová guma

Dva nástroje pracujú na pixelových vrstvách.

NástrojKde žijeČo robí
Nástroj ŠtetecZdieľa slot so Štetcom (B) a Výplňovým štetcom (⇧B)Kladie farbu, ktorá sa stane súčasťou obrázka
Nástroj Pixelová gumaZdieľa slot s Gumou (⇧E), Nožnicami a NožomGumuje maľovnú farbu, takže to, čo sedí pod nou, prejde cez

Ak chcete dosiahnuť ktorýkoľvek, stlačte a podržite viditeľný nástroj v paneli nástrojov alebo kliknite naň pravým tlačidlom myši a vyberte pixelový nástroj zo zozamu. Nepomýšľajte ich s ich vektorovými susedmi: Štetec kresli cestu, ktorú môžete prevarovať neskôr, zatiaľ čo Štetec maľuje pixely, ktoré sa nedajú pre-bodovať. Oba pixelové nástroje zobrazujú krúžok na plátne vo veľkosti, v ktorej budú maľovať a oba používají ukazovateľ krížika.

Ťahajte pre maľovanie alebo mazanie. Značka nasleduje ukazovateľ bez medzier bez ohľadu na to, ako rýchlo sa pohybujete, pretože Scissor kladie rad okrúhlych šampov pozdĺž ťahu a udržiava ich rovnomerne rozložené, aj keď ukazovateľ skáče. Pixelová guma berie alfu namiesto maľovania cez, takže to, čo vyčistí, ide úplne priesvitné; dlaždica vyčistená do ničoho je zahodená, takže mazanie nenecháva váhu pozadu.

Maľovanie vo farbe výplne

Štetec maľuje v aktuálnej farbe výplne. Nastavte ju rovnako ako akúkoľvek výplň: panelom Farba, vzorkou alebo, keď je Štetec aktívny v modernom rozhraní, ikonou Farba v paneli možností nástroja. Ak je výplň prázdna, Štetec sa späť k farbe obrysu a k čiernej, ak nie je žiadna farba. Vyberte farbu priamo z pixelovej vrstvy Kvapkadlom, keď chcete zarovnať maľovanie, ktoré je už dolu.

Veľkosť, tvrdosť a prietok

Keď je Štetec alebo Pixelová guma aktívna, panel možností nástroja nesie nastavenia, ktoré tvarujú značku. Sú tiež vo vašich Nastaveniach, takže prenesú z jednej relácie do druhej.

Veľkosť
Polomer štetcu, od 1 do 2500 pixelov. Stlačte [ pre zmenšenie štetcu a ] pre zväčšenie; každé stlačenie mení veľkosť o pätinu, takžekrok rastie so štetcom. Krúžok na plátne zobrazuje aktuálnu veľkosť.
Tvrdosť
Kde okraj začína vyblednúť, ako percento. Pri 100% je okraj ostrý; znížte ho a šamp sa zmäkčí smerom k okraju s plynulým poklesom a bez viditeľného krúžka. Použite jemný štetec pre tiene a skvorny, tvrdý pre pevné tvary.
Prietok
Ako veľa maľovania každý šamp kladie, len pre Štetec. Pod 100% sa farba stavia postupne, keď prejdete opakovane cez oblasť, čo sa hodí pre tieňovanie a pomalé zmiešanie. Pixelová guma nemá ovládanie prietoku.

Dodging, burning a sponging

Tri retušovacie štetce pracujú do pixelov, ktoré sú už tam, namiesto kladenia farby, zdieľajúc jeden slot v paneli nástrojov. Maľujú ako Štetec — rovnaká veľkosť, tvrdosť a krúžok na plátne — a stavia sa, keď prejdete opakovane cez oblasť, takže jemný dotyk je postupný a pevný je rýchly.

Dodge
Zosvetľuje tam, kde maľujete, zdvíhajúc tiene a pridávajúc odlesky.
Burn
Stmavňuje tam, kde maľujete, zhlbokujúc tiene a okraje.
Sponge
Zdvíhá sýtosť, robia farby bohatšie, čím viac cez ne prejdete.

Každý zanecháva priesvitné pixely nedotknuté, zostáva vo výberu, keď je jeden nastavený a celý ťah sa vracia späť v jednom kroku.

Vedierko, tvary a gradienty

Maľovanie nie je len Štetec. Na pixelovej vrstve kladie farbu ďalšie tri nástroje: Vedierko zaplavuje súvislú oblasť podobnej farby odkiaľ kliknete; nástroje tvarov pečiatnu obdĺžnik, elipsu, hviezdu alebo mnohouholník priamo do pixelov namiesto kreslenia cesty a Nástroj Gradient maľuje lineárnu alebo radiálnu zmes naprieč plochou. Každý rešpektuje aktuálny výber, takže môžete obmedziť výplň alebo gradient na zvolenú oblasť.

Výber pixelov

Výber pixelov — obdĺžnik — obmedzuje každé maľovanie a úpravu na oblasť vo vnútri, rovnako ako šablóna. Tri nástroje robia jeden, zdieľajúc slot výberu pixelov: Obdĺžnikový a Elipsový výber a voľný Lasso výber, ktorý obkreslite ručne. Ťahajte pre nakreslenie výberu; obyčajné ťahanie nahradí aktuálny.

Auto-Select vyberá podľa farby namiesto podľa tvaru: kliknite na pixelovú vrstvu a vezme súvislý pás farby okolo miesta, kde ste klikli, obkresľujúc obrys po piškotách — užitočné pre zdvihnutie plochého pozadia alebo jednej farebnej oblasti. Ako blízko musí byť farba, aby bola zadaná, je Tolerancia v možnostiach Auto-Select, rovnaké nastavenie, ktoré používa na vektorových objektoch; zvýšte ju pre zachytenie viac, znížte ju pre zachovanie tesnej zhody. Diery v pás sú vynechané z výberu.

Výbery sa kombinujú, takže tvar sa dá stavať z niekoľkých ťahov alebo kliknutí: podržte ⇧ pre pridanie do výberu, ⌥ pre odčítanie a obidve spoločne pre zachovanie len prekrývania — obdĺžniky a Auto-Select sa kombinujú rovnako. Výber > Všetko (⌘A) vyberie každý pixel, Výber > Inverzia prevráti obdĺžnik a Zrušiť výber — ⌘D na pixelovej vrstve — ho zahodí. Obrys po piškotách zobrazuje výber na plátne.

Presúvanie, strihanie a kopírovanie pixelov

S nastaveným výberom nástroj Výber presúva pixely vo vnútri: ťahajte z vnútra obdĺžnika a vybraná maľovná farba sa zdvihne a cestuje, čistiac tam, kde bola a nesúc obdĺžnik so sebou. Podržte ⌥ počas ťahania pre zanechanie originálu na mieste a presunutie kópie.

Transformačné nástroje pracujú na výbere tiež. S nastaveným obdĺžnikom obdĺžnik nástroja Výber a Nástroj Free Transform (E) obkĺži obdĺžnik, nie celú vrstvu, takže môžete škálovať, otáčať alebo presunúť len tú časť obrázka; Objekt > Transformácia a klávesy so šípkami pôsobia naň rovnako. Zdvihnuté pixely plávajú nad vrstvou počas práce, takže môžete ich ťahať znova a znova bez straty detailov. Stlačte Enter, vyberte iný nástroj alebo vytvorte nový výber pre ich položenie, čo je jeden krok späť alebo stlačte Escape pre vrátenie všetkého späť, kde bolo. Presun celých pixelov ich udržuje presne tak, ako boli; škálovanie alebo otáčanie ich pre-sampluje raz, keď sa položia.

Nástroj Free Transform Voľné skreslenie a Skreslenie v perspektíve fungujú na pixeloch tiež, na obdĺžnik alebo na celej vrstve: ťahajte rohom obdĺžnika (alebo podržte ⌘ počas ťahania jedného v režime Free Transform) pre vytiahnutie obrázka z miery, napríklad pre prilobenie fotografie na obrazovku alebo nápis videný pod uhlom. Počas ťahania Scissor zobrazuje rýchly náhľad veľkosti obrazovky, takže zostáva hladký aj na veľkej fotografii; samotné pixely sa potiahnú raz, v plnom rozlíšení, keď stlačíte Enter alebo pokračujete a obdĺžnik nasleduje nový tvar.

Kopírovanie (⌘C) a strihnutie (⌘X) pracujú na pixeloch vo vnútri obdĺžnika: kopírovanie zanechávrstvu tak, ako je, strihnutie vezme pixely von. Prilepenie (⌘V) ich položí na novú pixelovú vrstvu priamo nad tú, z ktorej pochádzali, presne na rovnakom mieste, pripravenú na presunutie alebo transformáciu samostatne. Rovnaké príkazy sú v Vytvoriť > Pixelová vrstva a výber tiež riadi príkazy plochy: Vyplniť farbou výplne vyplní len vybranú oblasť, Vyčistiť a Odstrániť ju vymažu a bez výberu každý pôsobí na celú vrstvu.

Úpravy

Podponuka Objekt > Pixelová vrstva > Úpravy retušuje farbu pixelovej vrstvy, obmedzenú na výber, keď je jeden nastavený. Každá otvorí dialógové okno, ktoré náhľadí na plátne počas ťahania.

Jas / Kontrast, Úrovne
Nastavuje celkovú svetlosť a kontrast alebo premapuje čierny bod, biely bod a gamu pre jemnejšiu tónovú kontrolu.
Odtieň / Sýtosť, Vibrance
Posúva odtieň a zdvíha alebo znižuje sýtosť naprieč plochou alebo používa Vibrance pre posílenie tlmených farieb, zanechávajúc už živé na pokoji.
Farebnová rovnováha
Tlačí stredné tóny smerom k azúrovej alebo červenej, purpurovej alebo zelenej, žltej alebo modrej.
Mapa gradientu
Premaľováva vrstvu podľa jej jasu, mapujúc tiene na jednu farbu a odlesky na druhú.
Desativovať, Invertovať
Odstráni všetku farbu do šedej alebo prevráti každú farbu na jej opak.
Prah, Posterize
Zníži obrázok na čistú čiernu a bielu na zvoleni úrovni alebo na malý počet tónov na kanál.

Filtre

Podponuka Filtre prevaruje samotné pixely, opäť vo vnútri výberu.

Gaussian Blur
Zhladí vrstvu rovnakým, nastaviteľným množstvom.
Ostrosť, Unsharp Mask
Zostrí detaily — Unsharp Mask dáva kontrolu nad polomerom, množstvom a prahom, ktorý šetrí ploché oblasti a jemný šum.
Pixelate
Rozdelí obrázok na štvorcové dlaždice pre mozaiku.
Pridať šum
Rozptýla zrno naprieč maľovaním.
Nájsť okraje, Relief
Značí, kde sa farba mení, ako svetlé čiary na tmavom alebo ako šedý relief.

Filtre > Náhľady efektov zobrazuje vašu vrstvu ako mriežku živých miniatur, každá s jednou úpravou alebo filtrom použitým, takže môžete vybrať podľa oka namiesto podľa názvu. Výber miniaturu zanechá okno otvorené. Nastavenia efektu sa objavia vedľa mriežky a plátno náhľadí výsledok, keď ich meníte. Nič sa nepoužije, kým nekliknete na Použiť (alebo stlačíte Enter). Zrušiť alebo Esc vracia obrázok späť a jedno vrátenie späť odstráni použitý efekt. Môžete ťahať okno jeho nadpisom pre zobrazenie plátna za ním.

Rýchle, dlaždicové vrátenie späť

Celý ťah sa vracia späť v jednom kroku, bez ohľadu na to, aký bol dlhý: stlačte ⌘Z raz a posledná značka je preč a ⇧⌘Z ju prináša späť. Ak musel prvý ťah vytvoriť svoju vrstvu, táto vrstva ide späť so ťahom namiesto toho, aby zostala prázdna pozadu.

Za scénami sa pixelová vrstva udrží ako mriežka malých dlaždíc a ťah kedykoľvek kopíruje len dlaždice, ktoré skutočne dotkol. Vrátenie späť zachováva snímky celého dokumentu, ale ťah stojí len svoje vlastné dlaždice namiesto celej plochy, takže maľovanie na veľkej vrstve zostáva rýchle a dlhá relácia štetcej právyňaňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňňň