DKIM (DomainKeys Identified Mail): a protokoll definíciója és működése az e-mailek védelmében

A DKIM egy fontos biztonsági protokoll, amely segít megvédeni az e-maileket a hamisítástól. Digitális aláírással igazolja az üzenet eredetét, így biztosítva, hogy a levél valóban a feladótól származik, és nem módosították útközben.
ITSZÓTÁR.hu
18 Min Read

Az internetes kommunikáció gerincét képező e-mailek mindennapi életünk, üzleti tranzakcióink és személyes kapcsolataink elengedhetetlen részét képezik. Azonban az e-mail alapvető protokolljai, mint az SMTP, eredetileg nem a mai szintű biztonsági fenyegetésekre lettek tervezve. Ez a sebezhetőség tette lehetővé a kiberbűnözők számára, hogy visszaéljenek az e-mail rendszerrel, például adathalászat, levélszemét (spam) terjesztése és domain-hamisítás (spoofing) révén. A digitális térben a bizalom alapvető érték, és az e-mail küldőjének hitelességének garantálása kulcsfontosságúvá vált a kiberbiztonsági stratégia részeként.

Ezen kihívásokra válaszul születtek meg az e-mail hitelesítési protokollok, amelyek célja a küldő azonosítása, az üzenet integritásának biztosítása és a hamisított e-mailek kiszűrése. A DKIM (DomainKeys Identified Mail) egyike ezeknek a protokolloknak, amely egy kifinomult kriptográfiai mechanizmust alkalmaz az e-mail üzenetek hitelességének ellenőrzésére. A DKIM nem csupán egy technikai megoldás; egy olyan bizalmi réteget ad az e-mail kommunikációhoz, amely nélkülözhetetlen a modern digitális ökoszisztémában.

Célja, hogy megakadályozza a spammerek és adathalászok által elkövetett visszaéléseket, akik gyakran hamisítják a küldő címét, hogy megtévesztő üzeneteket juttassanak el a címzettekhez. A DKIM egy digitális aláírást ad az e-mailhez, amely lehetővé teszi a fogadó szerver számára, hogy ellenőrizze, az üzenet valóban a feltüntetett domainről érkezett-e, és sértetlenül jutott-e el hozzá. Ez a mechanizmus jelentősen hozzájárul az e-mail kézbesíthetőségének javításához és a felhasználók védelméhez a káros tartalmaktól.

Mi is az a DKIM? A protokoll alapvető definíciója

A DKIM (DomainKeys Identified Mail) egy olyan technikai szabvány, amely lehetővé teszi az e-mail üzenetek digitális aláírását, ezzel biztosítva azok hitelességét és integritását. Lényegében egy módszer arra, hogy a küldő domainje kriptográfiailag megerősítse, hogy egy adott e-mailt valóban ő küldött, és az üzenet tartalma nem módosult a továbbítás során.

A protokoll az RFC 6376 szabványban van definiálva, és alapvetően a nyilvános kulcsú kriptográfia elvén működik. Ez azt jelenti, hogy minden DKIM-et használó domain rendelkezik egy kulcspárral: egy privát és egy publikus kulccsal. A privát kulcsot a küldő szerver biztonságosan tárolja és használja az e-mailek aláírására, míg a publikus kulcsot nyilvánosan hozzáférhetővé teszi a DNS (Domain Name System) rekordokon keresztül.

Amikor egy e-mailt küldenek, a küldő szerver a privát kulcsával digitálisan aláírja az üzenet bizonyos részeit (általában a fejlécet és a törzset). Ez az aláírás egy titkosított „pecsét”, amely az e-mailhez csatolódik. Amikor a fogadó e-mail szerver megkapja az üzenetet, lekéri a küldő domainjének publikus kulcsát a DNS-ből, és ennek segítségével ellenőrzi az aláírást. Ha az aláírás érvényes, az azt jelenti, hogy az e-mail valóban a megadott domainről származik, és nem módosították a továbbítás során. Ha az aláírás érvénytelen, az üzenet gyanússá válik, és spamként vagy adathalász kísérletként kezelhető.

A DKIM tehát egy bizalmi mechanizmus, amely segít a spam szűrőknek és a levelezőrendszereknek eldönteni, hogy egy beérkező e-mail megbízható-e. Növeli az e-mail kézbesíthetőségét, csökkenti a spam arányát a bejövő postafiókokban, és védi a felhasználókat a hamisított üzenetektől. Bár önmagában nem old meg minden e-mail biztonsági problémát, a többi hitelesítési protokollal, mint az SPF és a DMARC, együttműködve rendkívül hatékony védelmi vonalat képez.

Hogyan működik a DKIM? A digitális aláírás anatómiája

A DKIM működésének megértéséhez elengedhetetlen a digitális aláírás folyamatának részletes áttekintése. Ez a folyamat több lépésből áll, amelyek mind a küldő, mind a fogadó oldalon kulcsfontosságúak az e-mail hitelességének biztosításában.

A kulcspárok szerepe: privát és publikus kulcs

A DKIM alapja a nyilvános kulcsú kriptográfia, amely két egymással matematikailag összefüggő kulcsot használ: egy privát kulcsot és egy publikus kulcsot. A privát kulcsot, ahogy a neve is sugallja, titokban kell tartani, és csak a küldő szerver férhet hozzá. Ezzel a kulccsal történik az e-mail digitális aláírása. A publikus kulcs ezzel szemben nyilvánosan elérhető, és a DNS rendszerben van közzétéve. Ezt a kulcsot használják a fogadó szerverek az aláírás ellenőrzésére.

Amikor egy domain beállítja a DKIM-et, először is generálnia kell egy ilyen kulcspárt. A privát kulcsot általában egy hosszú, véletlenszerű karaktersorozat képzi, míg a publikus kulcs egy hasonlóan komplex, de a privát kulcshoz egyedileg kapcsolódó érték. A kulcsok biztonságos kezelése kiemelten fontos; a privát kulcs kompromittálása lehetővé tenné a támadó számára, hogy a domain nevében hamisított e-maileket küldjön.

Fejléc kanonizáció

Az e-mail aláírása előtt a DKIM protokollnak gondoskodnia kell arról, hogy az üzenet bizonyos részei standardizált formában legyenek. Ezt hívják kanonizációnak. A fejléc kanonizációja azt jelenti, hogy az e-mail fejlécében található mezőket (pl. From, To, Subject, Date) egy meghatározott szabályrendszer szerint normalizálják, mielőtt azokat az aláírási folyamatba bevonják. Ennek célja, hogy elkerüljék azokat az apró, de potenciálisan aláírás-érvénytelenítő módosításokat, amelyek az üzenet továbbítása során keletkezhetnek (pl. extra szóközök, sorvégi karakterek).

A DKIM két kanonizációs algoritmust definiál a fejléc számára: „simple” (egyszerű) és „relaxed” (laza).
A simple kanonizáció nagyon szigorú: minden apró módosítás a fejlécben (pl. extra szóközök, sorvégi karakterek) érvényteleníti az aláírást. Ez a legbiztonságosabb, de kevésbé toleráns a hálózati „zajjal” szemben.
A relaxed kanonizáció rugalmasabb: figyelmen kívül hagy bizonyos módosításokat, például a felesleges szóközöket, a fejléc mezők sorrendjét, vagy a nagy- és kisbetűk közötti különbséget a fejlécnevekben. Ez a gyakorlatban gyakrabban használt, mivel jobban tolerálja a továbbítás során esetlegesen bekövetkező apró változásokat anélkül, hogy érvénytelenítené az aláírást.

Törzs kanonizáció

Hasonlóan a fejléc kanonizációhoz, az e-mail törzsét is normalizálni kell az aláírás előtt. A törzs kanonizációja biztosítja, hogy az üzenet tartalmában bekövetkező apró, de jelentéktelen változások (pl. sorvégi karakterek, üres sorok hozzáadása) ne érvénytelenítsék az aláírást. Ennek célja, hogy az e-mail tartalmának integritását akkor is ellenőrizni lehessen, ha az átvitel során minimális, funkcionálisan irreleváns módosítások történnek.

A törzs kanonizációjára is létezik a „simple” és a „relaxed” algoritmus:
A simple törzs kanonizáció rendkívül szigorú: bármilyen változás a törzsben (beleértve az üres sorokat a végén) érvényteleníti az aláírást.
A relaxed törzs kanonizáció kevésbé szigorú: ignorálja a felesleges szóközöket a sorok végén, az üres sorokat az üzenet végén, és normalizálja a sorvégi karaktereket. Ez a gyakoribb választás, mivel az e-mailek gyakran átmennek különböző szervereken, amelyek apró módosításokat végezhetnek a formázáson anélkül, hogy a tartalom érdemben változna.

Az aláírás generálása

Miután a fejléc és a törzs kanonizálásra került a kiválasztott algoritmusok szerint, a következő lépés az aláírás generálása. A küldő e-mail szerver egy hash algoritmust (pl. SHA-256) alkalmaz a kanonizált fejléc és törzs kombinált adatain. A hash eredménye egy fix hosszúságú karakterlánc, egyfajta „ujjlenyomat” az üzenetről.

Ezt a hash értéket ezután a küldő domainjének privát kulcsával titkosítják. Az így kapott titkosított hash az digitális aláírás. Ez a folyamat biztosítja, hogy az aláírást csak az a fél hozhatta létre, aki rendelkezik a privát kulccsal, és hogy az aláírás egyedi az adott üzenetre nézve.

Az aláírás hozzáadása az e-mailhez

Az elkészült digitális aláírást egy speciális fejléc mezőbe, a DKIM-Signature mezőbe illesztik be, mielőtt az e-mail elhagyja a küldő szervert. Ez a fejléc mező tartalmazza magát az aláírást (b= tag), valamint számos paramétert, amelyek szükségesek az aláírás ellenőrzéséhez. Ezek a paraméterek a következők:

  • v: A DKIM protokoll verziója (jelenleg mindig 1).
  • a: Az aláíráshoz használt algoritmus (pl. rsa-sha256).
  • c: A kanonizációs algoritmusok (pl. relaxed/simple).
  • d: Az aláíró domain (a küldő domainje).
  • s: A selector, amely a DNS-ben található publikus kulcs azonosítására szolgál.
  • h: Az aláírt fejléc mezők listája (pl. From, To, Subject, Date).
  • bh: A törzs hash-e (body hash).
  • b: Maga a digitális aláírás.
  • t: Az aláírás időbélyege (timestamp).
  • x: Az aláírás lejárati ideje (opcionális).
  • l: Az aláírt törzs hossza (opcionális, a teljes törzs helyett csak egy részét írja alá).
  • z: Az eredeti fejléc mezők másolata, mielőtt azok kanonizálásra kerültek (hibakereséshez).

Ez a DKIM-Signature fejléc mező az e-mail többi fejlécével együtt kerül elküldésre a címzett felé. A fogadó szerver ezeket az információkat használja fel az aláírás ellenőrzéséhez.

A DKIM kulcsok gondos kezelése és a kanonizációs beállítások helyes megválasztása alapvető fontosságú a sikeres e-mail hitelesítéshez és a kézbesíthetőség maximalizálásához.

A DKIM ellenőrzési folyamata: validáció lépésről lépésre

Miután az aláírt e-mail megérkezett a fogadó levelezőszerverre, megkezdődik az ellenőrzési folyamat, amely biztosítja az üzenet hitelességét és integritását. Ez a folyamat a következő kulcsfontosságú lépésekből áll:

DNS lekérdezés: a publikus kulcs és a selector

Amikor a fogadó levelezőszerver megkap egy DKIM aláírással ellátott e-mailt, először megvizsgálja a DKIM-Signature fejléc mezőt. Ebből a mezőből kiolvassa a d= (aláíró domain) és az s= (selector) paramétereket. Ezek az információk elengedhetetlenek a megfelelő publikus kulcs megtalálásához a DNS-ben.

A selector egy tetszőlegesen választott karakterlánc, amelyet a küldő domain határoz meg a DKIM kulcspár generálásakor. Célja, hogy egy domain több DKIM kulcspárt is használhasson egyszerre (pl. különböző szolgáltatásokhoz, vagy kulcsrotáció során). A fogadó szerver ezután egy speciális DNS lekérdezést indít a következő formában: selector._domainkey.domain.com (ahol a „domain.com” az aláíró domain). Például, ha a selector „default” és a domain „example.com”, a lekérdezés a default._domainkey.example.com címre irányul.

Ennek a DNS bejegyzésnek egy TXT rekordnak kell lennie, amely tartalmazza a domain publikus kulcsát és egyéb releváns DKIM paramétereket. Ha a DNS lekérdezés sikertelen, vagy nem talál érvényes DKIM rekordot, az ellenőrzés azonnal sikertelennek minősül.

Publikus kulcs lekérése és az aláírás ellenőrzése

Amennyiben a DNS lekérdezés sikeres volt, a fogadó szerver megkapja a TXT rekordból a küldő domainjének publikus kulcsát (a p= tag értéke). Ezzel a kulccsal és a DKIM-Signature fejlécben található egyéb paraméterekkel (kanonizációs algoritmusok, aláírt fejlécek listája, törzs hash) megkezdődik az aláírás ellenőrzése.

Az ellenőrzés menete a következő:

  1. Fejléc és törzs kanonizáció: A fogadó szerver a c= tagban megadott kanonizációs algoritmusok (pl. relaxed/simple) szerint kanonizálja az e-mail fejlécét és törzsét. Pontosan ugyanazokat a szabályokat kell alkalmaznia, mint amiket a küldő szerver használt az aláírás generálásakor.
  2. Saját hash generálása: A kanonizált fejléc és törzs alapján a fogadó szerver a a= tagban megadott hash algoritmus (pl. SHA-256) segítségével generál egy saját hash értéket.
  3. Aláírás visszafejtése: A DKIM-Signature fejlécben található digitális aláírást (b= tag) a fogadó szerver a DNS-ből lekérdezett publikus kulccsal visszafejti. Ennek eredményeként megkapja az eredeti hash értéket, amelyet a küldő szerver generált.
  4. Összehasonlítás: A fogadó szerver összehasonlítja az általa generált hash értéket azzal a hash értékkel, amelyet a publikus kulccsal visszafejtett az aláírásból.

Az eredmények értelmezése

Az összehasonlítás eredményétől függően a DKIM ellenőrzés a következő eredményekkel zárulhat:

  • Pass (Sikeres): A két hash érték megegyezik. Ez azt jelenti, hogy az e-mailt valóban a feltüntetett domainről küldték, és tartalma nem módosult az átvitel során. Ez az eredmény nagyban növeli az üzenet megbízhatóságát, és valószínűsíti a kézbesítést a bejövő postafiókba.
  • Fail (Sikertelen): A két hash érték nem egyezik meg. Ez arra utalhat, hogy az e-mailt meghamisították, vagy a tartalma módosult az átvitel során. Ebben az esetben az üzenetet spamként vagy adathalász kísérletként jelölhetik meg, vagy elutasíthatják.
  • Neutral (Semleges): Az aláírás érvényes, de a domain hitelessége nem erősíthető meg teljes mértékben valamilyen okból (pl. aláírt, de nem releváns fejléc hiányzik). Ez ritka.
  • Softfail (Részlegesen sikertelen): Az aláírás szintaktikailag helyes, de valamilyen okból mégsem ellenőrizhető teljesen (pl. a kulcs nem elérhető, de a hiba nem kritikus).
  • None (Nincs): Az e-mail nem tartalmaz DKIM aláírást, vagy a küldő domain nem implementálta a DKIM-et. Ebben az esetben a fogadó szerver más hitelesítési mechanizmusokra (pl. SPF) támaszkodik, vagy alacsonyabb bizalmi szinttel kezeli az üzenetet.
  • TempError (Ideiglenes hiba): A DNS lekérdezés vagy más hálózati probléma miatt az ellenőrzés átmenetileg nem hajtható végre. A szerver később újrapróbálkozhat.
  • PermError (Végleges hiba): A DKIM aláírás szintaktikailag hibás, vagy a DNS rekord érvénytelen, ami megakadályozza az ellenőrzést.

A DKIM ellenőrzés eredménye egy fontos input a fogadó szerver spam szűrő rendszere számára. Bár egy sikeres DKIM ellenőrzés nem garantálja, hogy az e-mail legitim (egy rosszindulatú küldő is aláírhatja saját e-mailjeit), de jelentősen növeli az üzenet megbízhatóságát, különösen, ha más hitelesítési protokollokkal (SPF, DMARC) együtt használják.

A DKIM DNS rekord felépítése és beállítása

A DKIM rekord nyilvános kulcsot tárol a DNS-ben.
A DKIM DNS rekord egy nyilvános kulcsot tartalmaz, amely lehetővé teszi az e-mailek hitelesítését és integritásának ellenőrzését.

A DKIM implementációjának egyik legkritikusabb lépése a megfelelő DNS (Domain Name System) rekord beállítása. Ez a rekord tartalmazza a publikus kulcsot, amelyet a fogadó szerverek használnak az e-mailek aláírásának ellenőrzésére. A helytelen konfiguráció súlyos kézbesíthetőségi problémákat okozhat.

Selector kiválasztása

Minden DKIM kulcspárhoz tartozik egy selector. Ez egy szabadon választható aldomain-előtag, amelyet a DNS TXT rekord nevében használnak. Például, ha a selector „default” és a domain „pelda.hu„, akkor a DNS rekord neve „default._domainkey.pelda.hu” lesz.

A selectorok használata több okból is előnyös:

  • Több kulcs egy domainhez: Lehetővé teszi, hogy egyetlen domain több különböző DKIM kulcspárt használjon. Ez hasznos lehet, ha különböző e-mail szolgáltatásokat vesz igénybe (pl. marketing e-mailek egy szolgáltatón keresztül, tranzakciós e-mailek egy másikon keresztül), vagy ha rendszeres kulcsrotációt végez.
  • Kulcsrotáció: Amikor eljön az ideje a DKIM kulcsok cseréjének (ami biztonsági szempontból ajánlott), egyszerűen generálhat egy új kulcspárt egy új selectorral (pl. jan2024._domainkey.pelda.hu). Amikor az új kulcs már éles, a régi selectorhoz tartozó rekordot törölheti. Ez lehetővé teszi a zökkenőmentes átállást a kulcsok cseréjekor.
  • Szolgáltató-specifikus kulcsok: Sok e-mail szolgáltató (pl. Mailchimp, SendGrid, Google Workspace) saját selector nevet javasol vagy ír elő a DKIM beállításokhoz.

Érdemes olyan selector nevet választani, amely leíró jellegű, de nem túl hosszú, és nem ütközik más DNS bejegyzésekkel.

TXT rekord szintaxisa és paraméterei

A DKIM publikus kulcs és a kapcsolódó beállítások egy TXT (Text) DNS rekordban kerülnek tárolásra. A rekord neve mindig a selector._domainkey.domain.com formátumot követi, a tartalma pedig egy kulcs-érték párokból álló string.

Íme a legfontosabb paraméterek, amelyek egy DKIM TXT rekordban szerepelhetnek:

  • v=DKIM1: Kötelező. A DKIM protokoll verziója. Jelenleg mindig „DKIM1”.
  • p=: Kötelező. A publikus kulcs. Ez egy Base64 kódolású karakterlánc, amely a privát kulccsal párosított nyilvános kulcsot tartalmazza. Ha a kulcsot eltávolítják (pl. p= vagy p=;), az a DKIM aláírások érvénytelenítését eredményezi. Ez hasznos lehet a kulcsok visszavonására, de óvatosan kell használni.
  • k=: Opcionális. A kulcs típusa. Alapértelmezett és leggyakoribb érték az rsa.
  • s=: Opcionális. A szolgáltatás típusa, amelyre a kulcs érvényes. Alapértelmezett a * (minden szolgáltatás). Lehet email is.
  • t=y: Opcionális. Tesztmód flag. Ha jelen van, az aláírások teszt módban vannak, és a fogadó szerverek kevésbé szigorúan kezelhetik a hibákat. Éles környezetben nem szabad használni.
  • h=: Opcionális. Hash algoritmus(ok) listája, amelyet a domain használhat. Pl. sha256 vagy sha1:sha256. Ha nincs megadva, az alapértelmezett az sha256.
  • g=: Opcionális. Granularitás. Meghatározza, hogy mely címek használhatják az aláírást. A * a leggyakoribb, ami azt jelenti, hogy bármelyik cím használhatja a doménben.
  • n=: Opcionális. Megjegyzés, emberi olvasásra szánt szöveg. Hibakeresésre hasznos.
  • l=: Opcionális. A törzs aláírt részének maximális hossza. Ha jelen van, a fogadó szerver csak az üzenet törzsének első l bájtját ellenőrzi.
  • z=: Opcionális. Egy lista az aláírt fejléc mezőkről az aláírás előtt. Hibakereséshez hasznos.

Példák DNS rekordokra

Íme egy tipikus DKIM TXT rekord példa:

Host:       default._domainkey.pelda.hu
Type: TXT
Value: "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDgR8Z1YQ2O7v2Z5D2X1Q7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y9R9Y7Y

Share This Article
Leave a comment

Vélemény, hozzászólás?

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük